/**
 * Copyright &copy; 2012-2014 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.employee.dao;

import java.util.Date;
import java.util.List;

import com.thinkgem.jeesite.common.persistence.CrudDao;
import com.thinkgem.jeesite.common.persistence.annotation.MyBatisDao;
import com.thinkgem.jeesite.modules.employee.entity.CountOutsourceCost;
import com.thinkgem.jeesite.modules.employee.entity.LogisticsCost;
import com.thinkgem.jeesite.modules.employee.entity.OutsourceCostDetail;
import com.thinkgem.jeesite.modules.employee.entity.SummaryAttendance;
import org.apache.ibatis.annotations.Param;

/**
 * 外包工考勤成本明细表DAO接口
 * @author pan.zhou
 * @version 2017-07-26
 */
@MyBatisDao
public interface OutsourceCostDetailDao extends CrudDao<OutsourceCostDetail> {
    
    /**
     * 
     * 分頁查詢外包工成本汇总
     * @param outsourceCostDetail
     * @return
     */
    List<CountOutsourceCost> queryCountOutsourcePage(CountOutsourceCost outsourceCostDetail);

    OutsourceCostDetail getByEntity(OutsourceCostDetail outsourceCostDetail);
    /**
     * 
     * 分页查询间接物流成本
     * @param logisticsCost
     * @return
     */
    List<LogisticsCost> queryLogisticsCostPage(LogisticsCost logisticsCost);
    /**
     * 
     * 分页查询考勤汇总
     * @param summaryAttendance
     * @return
     */
    List<SummaryAttendance> querySummaryAttendancePage(SummaryAttendance summaryAttendance);

    /**
     * 查询时间段考勤汇总
     * @param name
     * @param startday
     * @param endDay
     * @return
     */
    List<SummaryAttendance> querySummaryAttendanceList(@Param("name") String name,@Param("startDate") Date startday,@Param("endDate") Date endDay);
}